/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package Controllayer;
import Modellayer.*;
import Dblayer.*;
import java.util.ArrayList;
/**
 *
 * @author Spike
 */
public class ArbejdsdageCtr
{
//denne variable er lavet for at holde på den bruger man arbejder med lige pt.
private ArbejdsDage tempArbejdsdage;

	public ArbejdsdageCtr()
	{}

	public ArbejdsDage findArbejdsdage(int arbID, boolean associations)
	{
	IFDBArbejdsdage dbArbejdsdage = new DBArbejdsdage();
	tempArbejdsdage = dbArbejdsdage.findArbejdsdage(arbID, associations);

	return tempArbejdsdage;
	}

//	public void opretArbejdsdage(int arbID, String dato, boolean weekend, boolean aften,int timer, double loen, int medNr)
//	{
//		Medarbejder tempMedarbejder = new Medarbejder();
//		tempMedarbejder.setMedNr(medNr);
//		tempArbejdsdage = new ArbejdsDage(arbID,dato, weekend, aften,timer,loen, tempMedarbejder);
//
//		IFDBArbejdsdage dbArbejdsdage = new DBArbejdsdage();
//		dbArbejdsdage.insertArbejdsdage(tempArbejdsdage);
//	}

        public void opretArbejdsdage(ArbejdsDage arbObj)
        {
            IFDBArbejdsdage dbArb = new DBArbejdsdage();
            dbArb.opretArbejdsdage(arbObj);
        }

	public void sletArbejdsdage(int ID)
	{
		IFDBArbejdsdage dbArbejdsdage = new DBArbejdsdage();
		dbArbejdsdage.sletArbejdsdage(ID);
	}

	public void redigerBruger(int arbID, String dato, boolean weekend, boolean aften,int timer, double loen, int medNr)
	{
		Medarbejder tempMedarbejder = new Medarbejder();
		tempMedarbejder.setMedNr(medNr);
		tempArbejdsdage = new ArbejdsDage(arbID,dato, weekend, aften,timer,loen, tempMedarbejder);

		IFDBArbejdsdage dbArbejdsdage = new DBArbejdsdage();
		dbArbejdsdage.redigerArbejdsdage(tempArbejdsdage);
	}

	public ArrayList<ArbejdsDage> ArbejdsdageSortering(String startDato, String slutDato, int medNr)
	{
		ArrayList<ArbejdsDage> tempList = new ArrayList();

		IFDBArbejdsdage dbArbejdsdage = new DBArbejdsdage();
		tempList = dbArbejdsdage.findArbejdsdageMedMedNr(medNr, true);

		int i = 0;
		boolean delete = true; //false = keep, true = delete
		while (i < tempList.size())
		{
			if (tempList.get(i).getDato().substring(6, 8).equals(startDato.substring(6, 8)))
			{
				if(tempList.get(i).getDato().substring(3, 5).equals(startDato.substring(3, 5)))
				{
					int tempDag = Integer.parseInt(tempList.get(i).getDato().substring(0, 2));
					if(tempDag >= Integer.parseInt(startDato.substring(0, 2)))
					{
						if(tempDag <= Integer.parseInt(slutDato.substring(0, 2)))
						{
							delete = false;
						}
					}
				}
			}

			if(delete == true)
			{
				tempList.remove(i);
				i--;
				System.out.println("ny size = " + tempList.size());
			}
			else
			{
				delete = true;
			}
			i++;

		}

		//kode eksempler:
		//String startString = startDato.substring(0, 2); dag
		//String startString = startDato.substring(3, 5); månede
		//String startString = startDato.substring(6, 8); år

		return tempList;
	}
}
